package cn.qidisoft.edu.hzjt.service.zyc;

import java.util.List;
import java.util.Map;

import cn.qidisoft.core.common.pagination.Page;
import cn.qidisoft.core.common.pagination.PaginationBean;
import cn.qidisoft.edu.hzjt.model.zyc.DevelopmentPlanningAtt;
import cn.qidisoft.edu.hzjt.model.zyc.ResearchProject;
import cn.qidisoft.edu.hzjt.model.zyc.ResearchProjectAtt;
import cn.qidisoft.edu.hzjt.model.zyc.ResearchProjectMember;
import cn.qidisoft.edu.hzjt.model.zyc.ResearchProjectStep;

/**
 * 课题管理 提交课题Grid页面 Service 接口层
 * @author zhangwenliang
 *@Date 2018.11.29
 */
public interface IResearchProjectService {
    /**
     *  查询条件
     * @param queryMap
     * @param page
     * @return
     */
	public PaginationBean<ResearchProject> getListData(Map<String, Object> queryMap, Page page);
    /**
     * 批量删除提交课题数据
     * @param list
     */
	public void delete(List<Integer> list);
     /**
      * 根据条件获取提交课题数据
      */
	public List<ResearchProject> getResearchProjectList(Map<String, Object> queryMap);
	
	/**
	 * 添加课题信息
	 * @param researchProject
	 */
	public void insert(ResearchProject researchProject);
	/**
	 * 添加课题成员信息
	 * @param list
	 */
	public void insertMember(List<ResearchProjectMember> list);
	/**
	 * 根据课题成员id 和  课题信息id查询成员表
	 * @param rMember
	 * @return
	 */
	public ResearchProjectMember  getResearchMember(ResearchProjectMember rMember);
	/**
	 * 获取课题信息 根据课题id
	 * @param parseInt
	 * @return
	 */
	public ResearchProject getByKTID(Integer parseInt);
	/**
	 * 更新课题信息
	 * @param researchProject
	 */
	public void update(ResearchProject researchProject);
	/**
	 * 根据课题信息id 删除 成员信息
	 * @param getkTID
	 */
	public void deletekTCY(Integer getkTID);
	/**
	 * 添加课题审批结果信息
	 * @param rProjectStep
	 */
	public void insertStep(ResearchProjectStep rProjectStep);
	/**
	 * 根据 ktid 获取审批结果
	 * @param parseInt
	 * @return
	 */
	public List<ResearchProjectStep> getBystepId(ResearchProjectStep researchProjectStep);
	/*
	 * 对 审批结果进行更新
	 */
	public void updateStep(ResearchProjectStep rProjectStep);
	
	void batchInserts(List<ResearchProjectAtt> records);
	
	// 获取附件信息
	public List<ResearchProjectAtt> queryList(ResearchProjectAtt att);
	/**
	 * 删除附件表
	 * @param attEntity
	 */
	public int deleteAccessory(ResearchProjectAtt attEntity);
	/**
	 * 查询附件信息
	 * @param attEntity
	 * @return
	 */
	public ResearchProjectAtt queryByFileId(ResearchProjectAtt attEntity);
	

}
